<?php
/*
 * 冗余文件检测处理
 */
 class RedundanceController extends IsLoginController{
 	
	public function index(){
		$file = glob('./upload/*'); //扫描 遍历一级目录  
		$this->assign('file',$file); //传递视图信息
		if(IS_POST){
			$dirNums = Q('post.dirNums');
			//如果是目录就 自调扫描方法 如果是文件 就push数组
			$files = $this->getFile($file[$dirNums].'/*'); 
			//查询数据库  读出所有图片信息 			
			//商品信息表内容商品图片 遍历  
			$img = M('goods_info')->all();  
			foreach($img as $k => $v ){
				$v = array_filter(explode(',', $v['goods_info_smallIMg']));//将图片图片字符串 分割沉数组   
				if(!empty($v)){ //如果有图片就 循环 组合图片路径
					foreach($v as $key => $v){
						$goodsImg[] = "./upload/goods/small/".$v."_thumb_100X100.jpg";
						$goodsImg[] = "./upload/goods/big/".$v."_thumb_800X800.jpg";
						$goodsImg[] = "./upload/goods/middle/".$v."_thumb_400X400.jpg";
					}
				}		
			}
			$delImg = array();
			//将扫描图片放入 数据图片对不 如果不存在就删除
			$files = array_unique($files);//过滤扫描重复文件名			
			foreach($files as $k =>$v){
				$bool = in_array($v, $goodsImg);
				if(!$bool){
					unlink("$v");
					$delImg[] = $v;
				}
			
			}
			//输出写入配置项
			$data[] = date("y-m-d h:i:s");
			$data = var_export($delImg,true);
			$t = date('y/m/d H:i:s');
			$total = count($delImg);
			$str = <<<str
<?php
//最近修改时间：$t;
//本次共清理：$total;
return array(
'delLog' =>
 {$data}


)

?>
str;
			$path = "./upload/delImg/DEL_log_".date('y_m_d_h_i_s').".php";
			$myfile = fopen($path,'a' ); 
			file_put_contents($path, $str);
			$this->success('文件清理完成 ! 文件日志生成完成 ! ');
		}
		$this->display();//显示模板
	}
	//扫描文件夹下所有文件方法
	public function getFile($dir){
		 static $dirArr=array();
		foreach(glob($dir) as $v){
			if(is_dir($v)){
//				//如果是目录 就自调继续扫描
				$this->getFile($dir.'/*');
			}else{
				$dirArr[] =$v;
//				return false;
			}
		}
		return $dirArr;
	}
	
	
	
 }
 	